/**
Group: efl/list (@since 1.23)
	 Part Rectangle: efl.draggable.horizontal_bar (required)
	 Part Rectangle: efl.draggable.vertical_bar (required)
	 Part Swallow: efl.background (required)
	 Part Swallow: efl.content (required)
	 Part Swallow: efl.overlay (required)
	 Signal: efl,action,scroll
	 Signal: efl,horizontal_bar,visible,off
	 Signal: efl,horizontal_bar,visible,on
	 Signal: efl,vertical_bar,visible,off
	 Signal: efl,vertical_bar,visible,on
Group: efl/list_item (@since 1.23)
	 Part Text: efl.text
	 Part Swallow: efl.background
	 Part Swallow: efl.extra
	 Part Swallow: efl.icon
	 Signal: efl,state,disabled
	 Signal: efl,state,enabled
	 Signal: efl,state,even
	 Signal: efl,state,odd
	 Signal: efl,state,pressed
	 Signal: efl,state,selected
	 Signal: efl,state,unpressed
	 Signal: efl,state,unselected
Group: efl/list_item:placeholder (@since 1.23)
	 Part Swallow: efl.background
	 Part Swallow: efl.content
	 Signal: efl,state,disabled
	 Signal: efl,state,enabled
	 Signal: efl,state,even
	 Signal: efl,state,odd
	 Signal: efl,state,pressed
	 Signal: efl,state,selected
	 Signal: efl,state,unpressed
	 Signal: efl,state,unselected
Group: efl/list_view (@since 1.23)
	 Part Rectangle: efl.draggable.horizontal_bar (required)
	 Part Rectangle: efl.draggable.vertical_bar (required)
	 Part Swallow: efl.background (required)
	 Part Swallow: efl.content (required)
	 Part Swallow: efl.overlay (required)
	 Signal: efl,action,scroll
	 Signal: efl,horizontal_bar,visible,off
	 Signal: efl,horizontal_bar,visible,on
	 Signal: efl,vertical_bar,visible,off
	 Signal: efl,vertical_bar,visible,on
*/
group { "efl/list";
   inherit: "efl/scroller";
   data.item: "version" "123";
}

group { "efl/list_view";
   inherit: "efl/list";
   data.item: "version" "123";
}

group { "efl/list_item";
   data.item: "version" "124";
   data.item: "selectraise" "on";
   data.item: "focusraise" "on";
   parts {
      rect { "base"; nomouse;
         desc { "default";
            color_class: "/bg/normal/list/item";
         }
         desc { "odd";
            color_class: "/bg-alt/normal/list/item";
         }
      }
      rect { "sel_base"; nomouse;
         desc { "default";
            color_class: "/bg/selected/list/item";
            hid;
         }
         desc { "selected";
            inherit: "default";
            vis;
         }
      }
      swallow { "efl.background";
         desc { "default";
            rel.to: "base";
            vis;
         }
      }
      //##//
      text { "efl.text"; nomouse;
         scale: 1;
         desc { "default";
            rel1.offset: 4 4;
            rel1.relative: 1.0 0.0;
            rel1.to_x: "efl.icon";
            rel2.offset: -5 -5;
            rel2.relative: 0.0 1.0;
            rel2.to_x: "efl.extra";
            color_class: "/fg/normal/list/item";
            text { font: FN; size: 10;
               min: 1 1;
               ellipsis: -1;
               align: 0.0 0.5;
               text_class: "list_item";
            }
            offscale;
         }
         desc { "selected";
            inherit: "default";
            color_class: "/fg/selected/list/item";
         }
         desc { "disabled";
            inherit: "default";
            color_class: "/fg/disabled/list/item";
         }
      }
      rect { "event";
         desc { "default";
            color: 0 0 0 0; // no cc
         }
         desc { "disabled";
            inherit: "default";
            hid;
         }
      }
      //##//
      swallow { "efl.icon";
         scale: 1;
         desc { "default";
            fixed: 1 0;
            align: 0.0 0.5;
            rel1.offset: 4 4;
            rel2.relative: 0.0 1.0;
            rel2.offset: 4 -5;
            min: ICMIN ICMIN;
            offscale;
         }
      }
      swallow { "efl.extra";
         scale: 1;
         desc { "default";
            fixed: 1 0;
            align: 1.0 0.5;
            rel1.offset: -5 4;
            rel1.relative: 1.0 0.0;
            rel2.offset: -5 -5;
            min: ICMIN ICMIN;
            offscale;
         }
      }
      rect { "event_block";
         desc { "default";
            color: 0 0 0 0; // no cc
            hid;
         }
         desc { "disabled";
            inherit: "default";
            vis;
         }
      }
   }
   programs {
      EFL_UI_CLICKABLE_PART_BIND("event")
      program { signal: "efl,state,odd"; source: "efl";
         action: STATE_SET "odd";
         target: "base";
      }
      program { signal: "efl,state,even"; source: "efl";
         action: STATE_SET "default";
         target: "base";
      }
      program { signal: "efl,state,pressed"; source: "efl";
         action: STATE_SET "selected";
         target: "sel_base";
         target: "efl.text";
      }
      program { signal: "efl,state,unpressed"; source: "efl";
         action: STATE_SET "default";
         target: "sel_base";
         target: "efl.text";
      }
      program { signal: "efl,state,selected"; source: "efl";
         action: STATE_SET "selected";
         target: "sel_base";
         target: "efl.text";
      }
      program { signal: "efl,state,unselected"; source: "efl";
         action: STATE_SET "default";
         target: "sel_base";
         target: "efl.text";
      }
      program { signal: "efl,state,disabled"; source: "efl";
         action: STATE_SET "disabled";
         target: "event";
         target: "efl.text";
      }
      program { signal: "efl,state,enabled"; source: "efl";
         action: STATE_SET "default";
         target: "event";
         target: "efl.text";
      }
   }
}

group { "efl/list_item:placeholder";
   data.item: "version" "124";
   data.item: "selectraise" "on";
   data.item: "focusraise" "on";
   parts {
      rect { "base"; nomouse;
         desc { "default";
            color_class: "/bg/normal/list/item";
         }
         desc { "odd";
            color_class: "/bg-alt/normal/list/item";
         }
      }
      rect { "sel_base"; nomouse;
         desc { "default";
            color_class: "/bg/selected/list/item";
            hid;
         }
         desc { "selected";
            inherit: "default";
            vis;
         }
      }
      swallow { "efl.background";
         desc { "default";
            rel.to: "base";
            vis;
         }
      }
      //##//
      rect { "event";
         desc { "default";
            color: 0 0 0 0; // no cc
         }
         desc { "disabled";
            inherit: "default";
            hid;
         }
      }
      //##//
      swallow { "efl.content";
         scale: 1;
         desc { "default";
            rel1.offset: 4 4;
            rel2.offset: -5 -5;
            min: ICMIN ICMIN;
            offscale;
         }
      }
      rect { "event_block";
         desc { "default";
            color: 0 0 0 0; // no cc
            hid;
         }
         desc { "disabled";
            inherit: "default";
            vis;
         }
      }
   }
   programs {
      EFL_UI_CLICKABLE_PART_BIND("event")
      program { signal: "efl,state,odd"; source: "efl";
         action: STATE_SET "odd";
         target: "base";
      }
      program { signal: "efl,state,even"; source: "efl";
         action: STATE_SET "default";
         target: "base";
      }
      program { signal: "efl,state,pressed"; source: "efl";
         action: STATE_SET "selected";
         target: "sel_base";
      }
      program { signal: "efl,state,unpressed"; source: "efl";
         action: STATE_SET "default";
         target: "sel_base";
      }
      program { signal: "efl,state,selected"; source: "efl";
         action: STATE_SET "selected";
         target: "sel_base";
      }
      program { signal: "efl,state,unselected"; source: "efl";
         action: STATE_SET "default";
         target: "sel_base";
      }
      program { signal: "efl,state,disabled"; source: "efl";
         action: STATE_SET "disabled";
         target: "event";
      }
      program { signal: "efl,state,enabled"; source: "efl";
         action: STATE_SET "default";
         target: "event";
      }
   }
}
